package com.member.shop.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.member.common.annotation.Excel;
import com.member.common.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;

import java.util.Date;
import java.util.List;

/**
 * 秒杀页对象 sys_biz_seckill_page
 *
 * @author lixinchen
 * @date 2025-04-12
 */
@Data
@SuperBuilder
@AllArgsConstructor
@NoArgsConstructor
@TableName("sys_biz_seckill_page")
public class SysBizSeckillPage extends BaseEntity {

    private static final long serialVersionUID = 1L;


    /**
     * 唯一id
     */
    @TableId(type = IdType.AUTO)
    private Long id;


    /**
     * 租户id
     */
    @Excel(name = "租户id")
    private Long tenantId;


    /**
     * 标题
     */
    @Excel(name = "标题")
    private String title;


    /**
     * 副标题
     */
    @Excel(name = "副标题")
    private String subTitle;


    /**
     * 活动开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "活动开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date activityStartTime;


    /**
     * 活动截止时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "活动截止时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date activityEndTime;


    /**
     * 封面
     */
    @Excel(name = "封面")
    private String cover;


    /**
     * 顶部图片
     */
    @Excel(name = "顶部图片")
    private String topPic;


    /**
     * 背景类型(1.图片 2.颜色)
     */
    @Excel(name = "背景类型(1.图片 2.颜色)")
    private Integer bgType;


    /**
     * 背景图片
     */
    @Excel(name = "背景图片")
    private String bgPic;


    /**
     * 是否上架(0:上架，1:下架)
     */
    @Excel(name = "是否上架(0:上架，1:下架)")
    private Integer displayed;


    /**
     * 排序
     */
    @Excel(name = "排序")
    private Long orderNum;


    /**
     * 是否删除(0：未删除，1：删除)
     */
    @Excel(name = "是否删除(0：未删除，1：删除)")
    private Integer deleted;

    /**
     * 可见用户
     * 1：VIP1, 2:VIP2, 3:VIP3, 4:VIP4, 5:VIP5
     */
    private String visibleUser;


    @TableField(exist = false)
    List<SysBizGoodsSku> topGoodsList;



    @TableField(exist = false)
    List<SysBizSeckillGoodsPage> categorizeGoodsList;


}
